#pragma once

#define CONV(ptr) ((sockaddr *)ptr)

class Nocopy
{
public:
    const Nocopy &operator=(const Nocopy &) = delete;
    Nocopy(const Nocopy &) = delete;

    Nocopy(/* args */)
    {
    }
    ~Nocopy()
    {
    }
};

enum ExitCode
{
    OK = 0,
    SOCKET_ERR,
    BIND_ERR,
    LISTEN_ERR,
    ACCEPT_ERR, 
    CONNECT_ERR,
    WRITE_ERR,
    READ_ERR,
    PRO_ERR,
    FORK_ERR,
    OPEN_ERR
};
